package com.niiwoo.activity.stage.service.terrace;

import com.niiwoo.activity.stage.dto.request.terrace.*;
import com.niiwoo.activity.stage.dto.response.terrace.*;
import com.niiwoo.tripod.provider.dto.response.PageResponseDTO;

import java.util.List;
import java.util.Map;

public interface TerraceInfoDubboService {
    /**
     * 获取最新留言数据
     * @return
     */
    default TerraceMessageRespDTO getTerraceMessageData(){
        throw new UnsupportedOperationException("unimplemented");
    }

    /**
     *用户报名信息查询接口
     * @param userId
     * @return
     */
    default ApplyInfoRespDTO queryApplyInfo(String userId){
        throw new UnsupportedOperationException("unimplemented");
    };

    /**
     * 保存报名信息接口
     * @param reqDTO
     * @return
     */
    default SaveApplyInfoRespDTO saveApplyUserInfo(ApplyInfoReqDTO reqDTO){
        throw new UnsupportedOperationException("unimplemented");
    };

    /**
     * 保存留言内容
     * @param reqDTO
     */
    default void saveMessageInfo(MessageInfoReqDTO reqDTO){
        throw new UnsupportedOperationException("unimplemented");
    }

    /**
     * 后台管理：查询报名信息列表数据
     * @param reqDTO
     * @return
     */
    default PageResponseDTO<TerraceInfoListRespDTO> terraceInfoList(TerraceListReqDTO reqDTO){
        throw new UnsupportedOperationException("unimplemented");
    }

    /**
     * 后台管理：查询报名信息详情
     * @param id
     * @return
     */
    default TerraceInfoListRespDTO terraceInfoDetail(Long id){
        throw new UnsupportedOperationException("unimplemented");
    }

    /**
     * 后台管理:报名审核状态修改
     * @param reqDTO
     * @return
     */
    default void terraceInfoUpdate(TerraceInfoUpdateReqDTO reqDTO){
        throw new UnsupportedOperationException("unimplemented");
    }

    /**
     * 后台管理：查看图片
     * @param userId
     * @return
     */
    default List<String> terraceImageDetail(String userId){
        throw new UnsupportedOperationException("unimplemented");
    }

    /**
     * 后台管理：分页查询最新留言
     * @return
     */
    default PageResponseDTO<MessageListRespDTO> terraceMessageList(MessageListReqDTO reqDTO){
        throw new UnsupportedOperationException("unimplemented");
    }

    /**
     * 后台管理：留言审核状态修改
     * @param reqDTO
     */
    default void messageStatusUpdate(MessageUpdateReqDTO reqDTO){
        throw new UnsupportedOperationException("unimplemented");
    }

    /**
     * 获取踩雷导出数据
     * @param reqDTO
     * @return
     */
    default List<Map<String,Object>> getExportData(TerraceListReqDTO reqDTO){
        throw new UnsupportedOperationException("unimplemented");
    }
    //job使用
    default void doTerraceUserAmount(){
        throw new UnsupportedOperationException("unimplemented");
    }
}
